perm filename TWOCOL.PUB[D,LES] blob
sn#142572 filedate 1975-01-29 generic text, type C, neo UTF8
COMMENT ⊗ VALID 00004 PAGES
C REC PAGE DESCRIPTION
C00001 00001
C00002 00002 .sides←2
C00007 00003 .font 5 "fix20"
C00009 00004 .SECNAME←NULL
C00010 ENDMK
C⊗;
.sides←2;
.DEVICE XGP
.page frame 53 high 82 wide
.area text lines 4 to 53 IN 2 COLUMNS 5 APART
.title area heading lines 1 to 3
.FONT 1 "BASL30"; FONT 2 "BASI30"; FONT 3 "BASB30";
.TURN ON "α%"
.ODDLEFTBORDER←1030; EVENLEFTBORDER←930;
.AT "ffi" ⊂ IF 0<THISFONT≤3 THEN "≠" ELSE "fαfαi" ⊃;
.AT "ffl" ⊂ IF 0<THISFONT≤3 THEN "α∞" ELSE "fαfαl" ⊃;
.AT "ff" ⊂ IF 0<THISFONT≤3 THEN "≥" ELSE "fαf" ⊃;
.AT "fi" ⊂ IF 0<THISFONT≤3 THEN "α≡" ELSE "fαi" ⊃;
.AT "fl" ⊂ IF 0<THISFONT≤3 THEN "∨" ELSE "fαl" ⊃;
.AT "--" ⊂ IF 0<THISFONT≤3 THEN "¬" ELSE "-α-" ⊃;
.MACRO NEXT COLUMN ⊂ SKIP TO COLUMN (IF COLUMN=1 THEN 2 ELSE 1) ⊃
.COMMENT Section numbering and table of contents;
.COUNT SECTION
.MACRO S(NAME) ⊂ SECNAME←SSNAME←NULL;
.BEGIN IF SECTION≥1 THEN NEXT PAGE ELSE SKIP TO COLUMN 1;
.NEXT SECTION; TURN ON "#{"
.INDENT 0,4; NOJUST; SELECT 3
.SECTION!}.##NAME
.SELECT 1; SKIP; SECNAME←"NAME"
.SEND CONTENTS ⊂ SKIP
∩∩6:{SECTION!}.##NAME→##{PAGE!}
. ⊃
.END ⊃
.COUNT SUBSECTION IN SECTION PRINTING "!.1"
.MACRO SS(NAME) ⊂ SSNAME←NULL
.BEGIN
.IF LINES<20 THEN NEXT COLUMN ELSE SKIP 2;
.NEXT SUBSECTION; TURN ON "#{"
.INDENT 2,6; NOJUST; SKIP; SELECT 3
.SUBSECTION!}##NAME
.SELECT 1; SSNAME←SUBSECTION!&"##"&"NAME";
.SEND CONTENTS ⊂ SKIP
∩∩3:∂3{SUBSECTION!}##NAME→##{PAGE!}
. ⊃
.END ⊃
.COUNT SUB2 IN SUBSECTION PRINTING "!.1"
.MACRO SSS(NAME) ⊂
.IF LINES<10 THEN NEXT COLUMN ELSE SKIP;
.NEXT SUB2
.BEGIN TURN ON "#{"
.INDENT 4,8; NOJUST; SELECT 3
.SUB2!}##NAME
.SELECT 1
.SEND CONTENTS ⊂
∩∩2:∂6{SUB2!}##NAME→##{PAGE!}
. ⊃
.END ⊃
.COUNT appendix PRINTING "A";
.MACRO APP(NAME) ⊂ SECNAME←SSNAME←NULL
.BEGIN SKIP TO COLUMN 1;
.IF sides=2 ∧ EVEN PAGE THEN NEXT PAGE;
.NEXT APPENDIX; TURN ON "#{"
.CENTER; SELECT 3
Appendix {APPENDIX!}
.skip
NAME
.SELECT 1; SKIP;
.SECNAME←"Appendix "&APPENDIX!; SSNAME←"NAME";
.IF APPENDIX=1 THEN BEGIN
. SEND CONTENTS ⊂ SKIP
∩∩6:←%3Appendices%1
. ⊃
. IF SIDES=1 THEN START EVERY HEADING(%3{SECNAME},{SSNAME},{PAGE!}); END;
. END
.SEND CONTENTS ⊂ SKIP
∩∩3:{APPENDIX!}.##NAME→##{PAGE!}
. ⊃
.END ⊃
.MACRO YON(LBL) ⊂ "Section "; SUB2! LBL ⊃;
.MACRO CB(TITLE) ⊂ BEGIN BREAK TURN ON "←"; SELECT 3
.IF LINES<5 THEN NEXT COLUMN;
←TITLE
.END ⊃
.MACRO FAC ⊂FILL ADJUST COMPACT ⊃
.MACRO BACK ⊂ COMMENT Call this macro once at the end of the document;
. COUNT PAGE PRINTING "i"
. IF SIDES=2 THEN START
. ODD HEADING(,%3TABLE OF CONTENTS,{PAGE!});
. EVEN HEADING(%3{PAGE!},TABLE OF CONTENTS,);
. END
. ELSE START EVERY HEADING(,%3TABLE OF CONTENTS,{PAGE!}) END;
.
. PORTION CONTENTS
. FILL NOJUST CRBREAK TURN ON "%∂#←→"
. AT "∩∩" LMIN ":" ⊂ IF LINES<LMIN THEN BEGIN
. NEXT COLUMN; SELECT 3
∂5Section→Page
. SKIP;
. END
. ⊃;
. INDENT 0,10,3; PREFACE 0; SELECT 3
∂5Section→Page
. SELECT 1;
. RECEIVE
.⊃
.insert contents;
.PORTION MAIN
.if sides=2 then start
. EVEN HEADING(%3{PAGE!},,{SECNAME})
. ODD HEADING(%3{SSNAME},,{PAGE!})
. end
.else every heading({Secname},,{PAGE!})
.PLACE HEADING; SELECT 3; TURN ON "#";
.PLACE TEXT; SELECT 1;
.count page to 300;
.next page;
.FAC; TURN ON "{"
.font 5 "fix20";
.COMMENT leave space for a full page figure;
.MACRO FIG(NAME) ⊂ SKIP TO COLUMN 1
.GROUP SKIP 20
NAME
.next page; ⊃
.MACRO BC ⊂ BEGIN PREFACE 0; INDENT 1,4; CRBREAK nojust ⊃
.MACRO BS ⊂ BEGIN PREFACE 0; INDENT 1,4; nojust ⊃
.MACRO SUB(IND) ⊂ INDENT 0,IND; TABS IND+1;⊃
.MACRO IB ⊂ turn on "%";
.AT """" ⊂ (IF THISFONT=1 THEN "%3" ELSE "%1"); ⊃
.AT "<" ⊂ "%2" ⊃; AT ">" ⊂ "%1" ⊃;
. ⊃
.MACRO BI ⊂ BEGIN IB ⊃;
.MACRO OI ⊂ ONCE IB ⊃;
.MACRO BIB ⊂ CB(References);
. BEGIN INDENT 0,3; NOJUST; IB;
. AT "AIM-" ⊂ "Stanford A. I. Memo AαIαMα-" ⊃;
. COUNT exref TO 200
. AT "⊗" ⊂ IF LINES<3 THEN NEXT COLUMN; NEXT EXREF; ("["&EXREF&"] ") ⊃
. ⊃
.MACRO ITEMS; ⊂
.nojust; count item; count subitem in item printing "a";
.at "⊗⊗"; ⊂ next subitem; indent 2,4; subitem!}. { ⊃
.at "⊗"; ⊂ next item; indent 0,2; item!}. { ⊃
.⊃
.
.at "\\pers"; ⊂ once nojust; ("%3Personnel: %1"); ⊃;
.
.MACRO GET(FILE) ⊂ BEGIN "FILE"
.REQUIRE "FILE" SOURCE;
.END "FILE"
. ⊃
.SECNAME←NULL;
.get "cogs";
.BACK;